home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / sys / amiga / programmer / 7418 < prev    next >
Encoding:
Text File  |  1996-08-05  |  6.1 KB  |  132 lines

  1. Newsgroups: comp.sys.amiga.programmer
  2. Path: news.ifm.liu.se!liuida!news
  3. From: c92manen@und.ida.liu.se (Mans Engman)
  4. Subject: Re: 680X0 -> PPC translator?
  5. X-Nntp-Posting-Host: astmatix.ida.liu.se
  6. Message-ID: <5479.6680T559T1228@und.ida.liu.se>
  7. Sender: news@ida.liu.se
  8. Organization: CIS Dept, Linkoping University, Sweden
  9. X-Newsreader: THOR 2.22 (Amiga;TCP/IP) *UNREGISTERED*
  10. References: <31499F8E.26A9@netvision.net.il> <volker.0fw1@vb.franken.de><315800D7.1854@sapiens.com><volker.0g32@vb.franken.de><315C198B.49C2@netvision.net.il><volker.0g5w@vb.franken.de><1996Apr2.230841.8275@scala.scala.com><31640B0C.23F5@netvision.net.il>
  11.     <1586.6669T961T2657@und.ida.liu.se> <31695324.57C8@netvision.net.il>
  12.     <4770.6673T831T125@und.ida.liu.se> <316EFB10.6EBD@netvision.net.il>
  13. Date: Tue, 16 Apr 1996 08:19:24 GMT
  14.  
  15. >> What do you mean? You think someone will come up with algorithms to solve
  16. >> problems *beyond* what a Turing machine can?
  17.  
  18. > excuse my poor knowledge of the english language, but i don't know what the
  19. > hell turing
  20. >machines are, so i can't reply to that.
  21.  
  22. Basically, there was a guy called Turing who introduced that concept. It's a
  23. theoretical machine that is based on very simple axioms, yet it is the most
  24. powerful formalism known. Apart from the limited memory of "real" computers,
  25. every program can be transformed to a Turing machine and vice versa. They
  26. are equivalent and are able to solve the same problems. So one may use this
  27. abstract machine instead of having to prove things for different kinds of
  28. programming languages and computers. And it follows that undecidable problems
  29. are for real, that is, it has been proven that *no* possible algorithm can
  30. exist which can solve all cases of these problems. If you wonder how the heck
  31. one could prove these things I can recommend doing some reading about
  32. computability/complexity theory.
  33.  
  34. >> This isn't an "irrelevant analogy", it's a simple example (among *many*
  35. >> undecidable problems) used to construct a program for which you can't
  36. >> analyse the program flow statically.
  37.  
  38. >'among many', PRECISLEY my point, your point still doesn't make it clear why
  39. >static code translation isn't possible, don't generalise on questionable
  40. >theories and be mucho more concrete, PLEASE!!!!
  41.  
  42. Precisley my point also. I showed how to make a program that will be able to
  43. "fool" a translator, and you can't deal with the problem without assuming
  44. things, as you've shown. Unless someone shows how to really solve the problem
  45. this is a proof that static translation isn't possible for all cases. The
  46. logic is perfectly clear, right?
  47. (Besides, I wouldn't call those theories "questionable")
  48.  
  49. >No,no,no that's not what you said, you refered to making a pc-relative jump
  50. >using some calculated value returned by some mathemtic function which is
  51. >simply not possible cus then you'd have to call the function from distances
  52. >of integer multiples of  your defined interval (say 42) otherwise you can't
  53. >call the function from any other place that way and that's simply not
  54. >practical to use in any program, AH AH no sirry. and even if you use this
  55. >method there's no problem detecting the function which calculates this offset
  56. >and figure which intervals are being used in the calculation. after all the
  57. >interval is fixed and the interface of fata exchange between the caller and
  58. >the callee is known to the analysing program, so it could discern the pattern
  59. >and actually jump in integer multiples of that interval to either of the 2
  60. >directions (up,down) and find the called functions that way.
  61.  
  62. No no no, you're assuming things again. The only restriction we have is
  63. that the address jumped to is an even address. What is "practical" to
  64. use is subjective and not relevant.
  65.  
  66. >>
  67. >> Even if you use an array, you'd have exactly the same problem trying to
  68. >> know which elements of the array are used as code pointers, and which of
  69. >> them are something completely different. Like pointers to data which looks
  70. >> like code, but isn't used as such (see below).
  71.  
  72. > not if the pointed code
  73. > bytes make some sense ie use defined data addresses, make valid calls,
  74. > has an RTS at the end, no, it's just too ordered for it to be just random
  75. > chaos, now would it.
  76.  
  77. It makes sense so it *might* be code, right.
  78.  
  79. >> It's perhaps not practical to have this very-advanced-function(tm) to
  80. >> calculate jump-addresses, but it's legal and possible.
  81.  
  82. >your 'highly' advanced feature will just have to wait for version 2.0 of the
  83. >translator, i guess, initial target is for 'less-advanced' programs if you
  84. >wish to call it that way which consist of ALL existing programs.
  85.  
  86. Who's generalizing now, eh? :)
  87.  
  88. So, when the v2.0 translator is out, I'd upgrade my program to v1.01 by adding
  89. two instructions, and the translator won't work until v3.0.
  90.  
  91. >> $7070
  92. >> $c1c1
  93. >> $4e75
  94. >> ...
  95. >> moveq   #112,d0
  96. >> muls    d1,d0
  97. >> rts
  98.  
  99. >yes, true, but you can defer the translation until you ,ake sure someone's
  100. >calling
  101. >this piece of code, which can be done by further analysing the rest of the
  102. >program. and besides, if a sequence of words makes some sense ie makes valid
  103. >references to other memory areas and it's a long section then it's probably
  104. >code, even you would have to agree that this is highly unlikely that it's
  105. >some other data.
  106.  
  107. Yes, it's probably unlikely, possibly, for most cases, except those my wicked
  108. mind will come up with. But I'd like to discuss theory and provable
  109. algorithms, not statistics and heuristics.
  110.  
  111. >> The best thing you can do about this is to have the both the original data
  112. >> and the translated part, in the final translated program.
  113. >> Then, you could determine, at *run-time*, how it is used.
  114.  
  115. >NO!! no way, all the required information is in the binary itself, no need
  116. >for any run-time analysis, you just need to know how to correctly distill
  117. >this information into a useful one which i have described how in previous
  118. >articles. give me problems i can't solve and then i'll raise my white flag
  119. >otherwise, it's on with the crusade and the pirate skull flag is still held
  120. >up high. hehehe
  121.  
  122. ;)
  123.  
  124. Why don't you begin by trying to find an algorithm for solving my toy
  125. example, Hilberts 10th problem. If you succeed you'll rule the world
  126. (and have my deepest respect, believe it or not).
  127.  
  128. >Avi Lev.
  129.  
  130. /Mans (.sig being recompiled)
  131.  
  132.